package shoppingmall.manage.service;

import shoppingmall.manage.pojo.Commodity;
import shoppingmall.manage.dto.PageBean;

import java.util.List;

/**
 * service层-商品管理接口相关方法
 */
public interface CommodityService {

    /**
     * 分页查询商品
     */
    public PageBean getCommodityList (int page, int pageSize);

    /**
     * 查询所有的商品
     */
    public PageBean getAllCommodityList ();

    /**
     * 添加一条商品
     */
    public boolean saveCommodity (Commodity commodity);

    /**
     * 修改一条商品
     */
    public boolean updateCommodity (Commodity commodity);

    /**
     * 删除一条商品
     */
    public boolean deleteCommodity (int commodityId);

    /**
     * 根据商品分类对商品进行筛选
     */
    public PageBean getCommodityListByCategory (int commodityCategoryId);

    /**
     * 批量删除商品 根据商品id commodityIds
     */
    public boolean deleteCommodityBatch (List<Integer> commodityIds);

    /**
     * 根据商品名称对商品进行模糊搜索 commodityName
     */
    public PageBean getCommodityListByCommodityName (String commodityName);

    /**
     * 根据某个字段对商品进行排序输出 fieldName = commodity_sales || commodity_sale_money    sortRule = asc || desc
     */
    public PageBean getCommodityListSort (String fieldName, String sortRule);
}
